FROM php:7.4-cli

LABEL image.authors="jani <liberty_linlin@qq.com>"

WORKDIR /app

RUN apt update \
    && apt install -y libzip-dev libbz2-dev \
        libnghttp2-dev libc-ares-dev \
    && docker-php-ext-install zip mysqli pdo_mysql bcmath iconv \
        sysvmsg sysvsem sysvshm sockets pcntl


# 添加安装包到指定目录，只支持 tar 类型的安装包，所以需要去 pecl.php.net 网站下载
# 安装编译工具
# 编译安装
# 清空安装包，无用的关联工具
#注: 因 windows 使用的是 wsl 子系统，所以需要加上 Dockerfile/ 文件夹，如果直接在 linux 运行的 docker 可以直接指向 pecl
COPY ./pecl/ /app/pecl/
RUN apt install -y gcc g++ autoconf make \
    && pecl install /app/pecl/redis-5.3.5RC1.tgz \
    && pecl install /app/pecl/swoole-4.8.2.tgz \
    && docker-php-ext-enable swoole redis \
    && rm -rf /app/pecl \
    && apt -y remove gcc g++ autoconf make

# 添加 composer 工具
COPY --from=composer:2.1.12 /usr/bin/composer /usr/local/bin/composer
RUN chmod +x /usr/local/bin/composer \
    && /usr/local/bin/composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
